package com.aaa.vip.service;

import com.aaa.common.entity.UserAddress;
import com.aaa.common.vo.Page;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * (UserAddress)表服务接口
 *
 * @author makejava
 * @since 2025-09-20 09:27:30
 */
public interface UserAddressService {
    /**
     *  通过token查询默认地址
     * @param
     * @return null
     **/
    UserAddress queryDefaultAddress();
    /**
     *  查询地址编码
     * @param country
     * @param province
     * @return java.lang.Integer
     **/
    Integer selectCode(@Param("country") String country, @Param("province") String province);
    /**
     * 查询所有地址根据userid
     * @return
     */
    List<UserAddress> selectAllAddress();

    /**
     * 通过ID查询单条数据
     *
     * @param addressId 主键
     * @return 实例对象
     */
    UserAddress queryById(Integer addressId);

    /**
     * 分页查询
     *
     * @param page 筛选条件
     * @return 查询结果
     */
    PageInfo queryByPage(Page<UserAddress> page);

    /**
     * 新增数据
     *
     * @param userAddress 实例对象
     * @return 实例对象
     */
    UserAddress insert(UserAddress userAddress);

    /**
     * 修改数据
     *
     * @param userAddress 实例对象
     * @return 实例对象
     */
    UserAddress update(UserAddress userAddress);

    /**
     * 通过主键删除数据
     *
     * @param addressId 主键
     * @return 是否成功
     */
    boolean deleteById(Integer addressId);

}
